g++编译多文件 您所在的位置:网站首页 vscode 多文件调试 g++编译多文件

g++编译多文件

2023-04-14 19:09| 来源: 网络整理| 查看: 265

一、问题引入

在使用VSCode编写C++程序过程中,自定义一个 *.h 文件,其中包含了函数声明,在主函数中引入头文件后,调用头文件对应C++文件中的方法,出现了undefined reference问题

二、解决过程

分析问题:主要是 预处理时,编译器没有找到stock.cpp的位置,导致 undefined reference问题

直接通过g++命令行:g++ -g .\stock_operate.cpp ..\inc\stock.cpp -o stock_operate

三、反思总结

涉及到gcc/g++的命令行编译,应该熟悉编译的参数功能,才能合理修改Visual Studio Code中的编译参数。

以下是一些常用的g++编译器参数及其功能:

-o: 指定输出文件名。例如,g++ test.cpp -o myprog将编译test.cpp并将可执行文件命名为myprog。 -c: 编译源代码但不执行链接操作,生成目标文件(.o文件)。 -Wall: 开启所有警告信息。 -O: 启用优化选项。有多个级别的优化可以选择,例如-O1表示启用较基本的优化级别,而-O3则表示使用更高级别的优化。 -g: 生成调试信息。这可以帮助开发人员在代码出现问题时进行调试。 -std=c++XX: 指定C++语言的版本。例如,-std=c++11指定使用C++11标准。 -I: 添加头文件搜索路径。例如,-I /usr/local/include表示在/usr/local/include目录中查找头文件。 -L: 添加库文件搜索路径。例如,-L /usr/local/lib表示在/usr/local/lib目录中查找库文件。 -l: 链接外部库文件。例如,-lboost_system表示链接名为libboost_system.a或者libboost_system.so(取决于系统)的库文件。

除此之外,g++还提供了很多其他的编译器参数,可以通过输入man g++查看完整的帮助文档。

四、参考引用

VSCode编写C++自定义头文件undefined reference异常问题



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有